﻿namespace HDW_Migrate.Db.Entities;

/// <summary>
/// 就诊信息
/// </summary>
public class Visit : BaseEntity
{
    /// <summary>
    /// His患者编号
    /// </summary>
    public string HisPatientId { get; set; }
    /// <summary>
    /// 就诊号
    /// </summary>
    public string VisitNumber { get; set; }
    /// <summary>
    /// 申请科室编码
    /// </summary>
    public string ApplyDepartmentCodeStd { get; set; }
    /// <summary>
    /// 申请科室名称
    /// </summary>
    public string ApplyDepartmentNameStd { get; set; }
    /// <summary>
    /// 执行科室编码
    /// </summary>
    public string ExecDepartmentCodeStd { get; set; }
    /// <summary>
    /// 执行科室名称
    /// </summary>
    public string ExecDepartmentNameStd { get; set; }
    /// <summary>
    /// 申请医师执业资格证书编号
    /// </summary>
    public string ApplyDoctorCertificateNo { get; set; }
    /// <summary>
    /// 审核医师执业资格证书编号
    /// </summary>
    public string ApproveDoctorCertificateNo { get; set; }
    /// <summary>
    /// 设备型号
    /// </summary>
    public string DeviceModel { get; set; }
    /// <summary>
    /// 设备厂商
    /// </summary>
    public string DeviceManufacturer { get; set; }

    /// <summary>
    /// 患者来源
    /// </summary>
    public string PatientType { get; set; }
    /// <summary>
    /// 门诊号
    /// </summary>
    public string ClinicalNumber { get; set; }
    /// <summary>
    /// 病区号
    /// </summary>
    public string RoomNumber { get; set; }
    /// <summary>
    /// 病床号
    /// </summary>
    public string BedNumber { get; set; }
    /// <summary>
    /// 住院号
    /// </summary>
    public string InpatientNumber { get; set; }
    /// <summary>
    /// 最后更新时间
    /// </summary>
    public DateTime LastUpdateDateTime { get; set; }
    /// <summary>
    /// 最后修改人
    /// </summary>
    public Guid? LastModifierId { get; set; }
    /// <summary>
    /// 是否是VIP
    /// </summary>
    public bool IsVIP { get; set; }
    /// <summary>
    /// 是否有特权
    /// </summary>
    public bool? IsPrivilege { get; set; }
    /// <summary>
    /// 临床诊断
    /// </summary>
    public string ClinicalDiagnosis { get; set; }
    /// <summary>
    /// 过敏史
    /// </summary>
    public string AllergyHistory { get; set; }
    /// <summary>
    /// 危重值Id
    /// </summary>
    public Guid CriticalId { get; set; }
    /// <summary>
    /// 症状
    /// </summary>
    public string Symptom { get; set; }
    /// <summary>
    /// 体征
    /// </summary>
    public string Sign { get; set; }
    /// <summary>
    /// 化验结果
    /// </summary>
    public string LaboratoryReport { get; set; }
    /// <summary>
    /// 其它诊断结果
    /// </summary>
    public string OtherDiagnosis { get; set; }
    /// <summary>
    /// 病史
    /// </summary>
    public string DiseaseHistory { get; set; }
    /// <summary>
    /// 患者身份，因为跟申请单相关，放在Visit里
    /// </summary>
    public Guid? PatientIdentityId { get; set; }
    /// <summary>
    /// 费别类型
    /// </summary>
    public Guid? ChargeTypeId { get; set; }
    /// <summary>
    /// 传染病检查（ES）
    /// </summary>
    public Guid? InfectionResultId { get; set; }
    /// <summary>
    /// UBT尿素呼气试验结果(ES)
    /// </summary>
    public Guid? HpTestResultId { get; set; }
    /// <summary>
    /// 患者Id
    /// </summary>
    public Guid PatientId { get; set; }
}

/// <summary>
/// 危重值
/// </summary>
public class Critical : BaseEntity
{
    /// <summary>
    /// 名称
    /// </summary>
    public string Name { get; set; }
    /// <summary>
    /// 编码
    /// </summary>
    public string Code { get; set; }
    /// <summary>
    /// 排序值
    /// </summary>
    public int Sort { get; set; }
}
/// <summary>
/// 费用类型
/// </summary>
public class ChargeType : BaseEntity
{
    /// <summary>
    /// 名称
    /// </summary>
    public string Name { get; set; }
    /// <summary>
    /// 编码
    /// </summary>
    public string Code { get; set; }
    /// <summary>
    /// 排序值
    /// </summary>
    public int Sort { get; set; }
    /// <summary>
    /// 助记码
    /// </summary>
    public string MnemonicCode { get; set; }
}
/// <summary>
/// 传染病检查
/// </summary>
public class InfectionResult : BaseEntity
{
    /// <summary>
    /// 名称
    /// </summary>
    public string Name { get; set; }
    /// <summary>
    /// 编码
    /// </summary>
    public string Code { get; set; }
    /// <summary>
    /// 排序值
    /// </summary>
    public int Sort { get; set; }
    /// <summary>
    /// 助记码
    /// </summary>
    public string MnemonicCode { get; set; }
}
/// <summary>
/// 尿素呼气试验(超声内镜使用)
/// </summary>
public class HpTestResult : BaseEntity
{
    /// <summary>
    /// 名称
    /// </summary>
    public string Name { get; set; }
    /// <summary>
    /// 编码
    /// </summary>
    public string Code { get; set; }
    /// <summary>
    /// 排序值
    /// </summary>
    public int Sort { get; set; }
    /// <summary>
    /// 助记码
    /// </summary>
    public string MnemonicCode { get; set; }
}